#ifndef SECTIONINFO_H
#define SECTIONINFO_H

#include <QSharedPointer>
#include <QString>
#include <QVariantList>
#include "abstract-database-client.h"
#include "sm-global.h"

class SectionInfo
{
public:
    SectionInfo();

    void setSection (SmGlobal::SectionType section);
    void setDescription (QString description);
    void setDatabaseClient (QSharedPointer<AbstractDatabaseClient> databaseClient);
    void setLoadingParameters (const QVariantList& parameters);

    SmGlobal::SectionType section() const;
    QString description() const;
    QSharedPointer<AbstractDatabaseClient> databaseClient() const;
    QVariantList loadingParameters() const;

private:
    SmGlobal::SectionType m_section;
    QString m_description;
    QSharedPointer<AbstractDatabaseClient> m_databaseClient;
    QVariantList m_loadingParameters;
};

#ifndef QT_NO_DEBUG
QDebug operator<< (QDebug debug, const SectionInfo& sectionInfo);
#endif

#endif // SECTIONINFO_H
